home *** CD-ROM | disk | FTP | other *** search
/ Software of the Month Club 2000 October / Software of the Month - Ultimate Collection Shareware 277.iso / pc / PROGRAMS / UTILITY / WINLINUX / DATA1.CAB / usr_-_Usr_Files / INCLUDE / FTW.H < prev    next >
C/C++ Source or Header  |  1999-09-17  |  2KB  |  75 lines

  1. /* Copyright (C) 1992 Free Software Foundation, Inc.
  2. This file is part of the GNU C Library.
  3. Contributed by Ian Lance Taylor (ian@airs.com).
  4.  
  5. The GNU C Library is free software; you can redistribute it and/or
  6. modify it under the terms of the GNU Library General Public License as
  7. published by the Free Software Foundation; either version 2 of the
  8. License, or (at your option) any later version.
  9.  
  10. The GNU C Library is distributed in the hope that it will be useful,
  11. but WITHOUT ANY WARRANTY; without even the implied warranty of
  12. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  13. Library General Public License for more details.
  14.  
  15. You should have received a copy of the GNU Library General Public
  16. License along with the GNU C Library; see the file COPYING.LIB.  If
  17. not, write to the Free Software Foundation, Inc., 675 Mass Ave,
  18. Cambridge, MA 02139, USA.  */
  19.  
  20. /*
  21.  *    SVID ftw.h
  22.  */
  23.  
  24. #ifndef _FTW_H
  25.  
  26. #define    _FTW_H    1
  27. #include <features.h>
  28.  
  29. #ifdef __linux__
  30. #include <sys/stat.h>
  31. #else
  32. #include <statbuf.h>
  33. #endif
  34.  
  35. /* The FLAG argument to the user function passed to ftw.  */
  36. #define FTW_F    0        /* Regular file.  */
  37. #define FTW_D    1        /* Directory.  */
  38. #define FTW_DNR    2        /* Unreadable directory.  */
  39. #define FTW_NS    3        /* Unstatable file.  */
  40.  
  41. #ifdef __SVR4_I386_ABI_L1__
  42. #define FTW_SL         4
  43. #define FTW_DP         6
  44. #define FTW_SLN         7
  45.  
  46. #define FTW_PHYS    (1<<0)
  47. #define FTW_MOUNT    (1<<1)
  48. #define    FTW_CHDIR    (1<<2)
  49. #define FTW_DEPTH    (1<<3)
  50.  
  51. struct FTW {
  52.     int quit;
  53.     int base;
  54.     int level;
  55. };
  56.  
  57. #define    FTW_SKD        (1<<0)
  58. #define FTW_FOLLOW    (1<<1)
  59. #define FTW_PRUNE    (1<<2)
  60.  
  61. #endif /* __SVR4_I386_ABI_L1__ */
  62.  
  63. __BEGIN_DECLS
  64.  
  65. typedef int (*__ftw_func_t) __P ((__const char *__file,
  66.          struct stat *__status, int __flag));
  67.  
  68. /* Call a function on every element in a directory tree.  */
  69. extern int ftw __P ((__const char *__dir, __ftw_func_t __func,
  70.          int __descriptors));
  71.  
  72. __END_DECLS
  73.  
  74. #endif    /* ftw.h */
  75.